package com.hd123.rumba.gwt.base.client;

import java.util.HashMap;

import com.google.gwt.user.client.rpc.IsSerializable;
import com.hd123.rumba.gwt.base.client.biz.BSimpleBasic;

/**
 * 当前会话信息。
 * 
 * @author lxm
 * 
 */
public class Session extends HashMap implements IsSerializable {

  private static final String KEY_DOMAIN = "_rb_domain";
  private static final String KEY_ORGANIZATION = "_rb_organization";
  private static final String KEY_USER = "_rb_user";

  /** 键名：功能权限列表 */
  public static final String KEY_PERMISSIONS = "_rb_permissions";
  /** 键名：构件包功能视图前缀 */
  public static final String KEY_CFVPREFIX = "_rb_cfvprefix";

  /** 当前登录域。 */
  public BSimpleBasic getDomain() {
    return (BSimpleBasic) this.get(KEY_DOMAIN);
  }

  /** 当前登录域。 */
  public void setDomain(BSimpleBasic domain) {
    this.put(KEY_DOMAIN, domain);
  }

  /** 当前登录组织。 */
  public BSimpleBasic getOrganization() {
    return (BSimpleBasic) this.get(KEY_ORGANIZATION);
  }

  /** 当前登录组织。 */
  public void setOrganization(BSimpleBasic organization) {
    this.put(KEY_ORGANIZATION, organization);
  }

  /** 当前登录用户。 */
  public BSimpleBasic getUser() {
    return (BSimpleBasic) this.get(KEY_USER);
  }

  /** 当前登录用户。 */
  public void setUser(BSimpleBasic user) {
    this.put(KEY_USER, user);
  }

}
